#include "keyconvertercustom.h"

int KeyConverterCustom::convertKey(Qt::Key k)
{
  switch (k)
  {
    case Qt::Key_Escape: return 0;
    case Qt::Key_Tab: return 1;
    case Qt::Key_Backtab: return 2;
    case Qt::Key_Backspace: return 3;
    case Qt::Key_Return: return 4;
    case Qt::Key_Enter: return 5;
    case Qt::Key_Insert: return 6;
    case Qt::Key_Delete: return 7;
    case Qt::Key_Pause: return 8;
    case Qt::Key_Print: return 9;
    case Qt::Key_SysReq: return 10;
    case Qt::Key_Clear: return 11;
    case Qt::Key_Home: return 12;
    case Qt::Key_End: return 13;
    case Qt::Key_Left: return 14;
    case Qt::Key_Up: return 15;
    case Qt::Key_Right: return 16;
    case Qt::Key_Down: return 17;
    case Qt::Key_PageUp: return 18;
    case Qt::Key_PageDown: return 19;
    case Qt::Key_Shift: return 20;
    case Qt::Key_Control: return 21;
    case Qt::Key_Meta: return 22;
    case Qt::Key_Alt: return 23;
    case Qt::Key_CapsLock: return 24;
    case Qt::Key_NumLock: return 25;
    case Qt::Key_ScrollLock: return 26;
    case Qt::Key_F1: return 27;
    case Qt::Key_F2: return 28;
    case Qt::Key_F3: return 29;
    case Qt::Key_F4: return 30;
    case Qt::Key_F5: return 31;
    case Qt::Key_F6: return 32;
    case Qt::Key_F7: return 33;
    case Qt::Key_F8: return 34;
    case Qt::Key_F9: return 35;
    case Qt::Key_F10: return 36;
    case Qt::Key_F11: return 37;
    case Qt::Key_F12: return 38;
    case Qt::Key_F13: return 39;
    case Qt::Key_F14: return 40;
    case Qt::Key_F15: return 41;
    case Qt::Key_F16: return 42;
    case Qt::Key_F17: return 43;
    case Qt::Key_F18: return 44;
    case Qt::Key_F19: return 45;
    case Qt::Key_F20: return 46;
    case Qt::Key_F21: return 47;
    case Qt::Key_F22: return 48;
    case Qt::Key_F23: return 49;
    case Qt::Key_F24: return 50;
    case Qt::Key_F25: return 51;
    case Qt::Key_F26: return 52;
    case Qt::Key_F27: return 53;
    case Qt::Key_F28: return 54;
    case Qt::Key_F29: return 55;
    case Qt::Key_F30: return 56;
    case Qt::Key_F31: return 57;
    case Qt::Key_F32: return 58;
    case Qt::Key_F33: return 59;
    case Qt::Key_F34: return 60;
    case Qt::Key_F35: return 61;
    case Qt::Key_Super_L: return 62;
    case Qt::Key_Super_R: return 63;
    case Qt::Key_Menu: return 64;
    case Qt::Key_Hyper_L: return 65;
    case Qt::Key_Hyper_R: return 66;
    case Qt::Key_Help: return 67;
    case Qt::Key_Direction_L: return 68;
    case Qt::Key_Direction_R: return 69;
    case Qt::Key_Space: return 70;
    case Qt::Key_Exclam: return 72;
    case Qt::Key_QuoteDbl: return 73;
    case Qt::Key_NumberSign: return 74;
    case Qt::Key_Dollar: return 75;
    case Qt::Key_Percent: return 76;
    case Qt::Key_Ampersand: return 77;
    case Qt::Key_Apostrophe: return 78;
    case Qt::Key_ParenLeft: return 79;
    case Qt::Key_ParenRight: return 80;
    case Qt::Key_Asterisk: return 81;
    case Qt::Key_Plus: return 82;
    case Qt::Key_Comma: return 83;
    case Qt::Key_Minus: return 84;
    case Qt::Key_Period: return 85;
    case Qt::Key_Slash: return 86;
    case Qt::Key_0: return 87;
    case Qt::Key_1: return 88;
    case Qt::Key_2: return 89;
    case Qt::Key_3: return 90;
    case Qt::Key_4: return 91;
    case Qt::Key_5: return 92;
    case Qt::Key_6: return 93;
    case Qt::Key_7: return 94;
    case Qt::Key_8: return 95;
    case Qt::Key_9: return 96;
    case Qt::Key_Colon: return 97;
    case Qt::Key_Semicolon: return 98;
    case Qt::Key_Less: return 99;
    case Qt::Key_Equal: return 100;
    case Qt::Key_Greater: return 101;
    case Qt::Key_Question: return 102;
    case Qt::Key_At: return 103;
    case Qt::Key_A: return 104;
    case Qt::Key_B: return 105;
    case Qt::Key_C: return 106;
    case Qt::Key_D: return 107;
    case Qt::Key_E: return 108;
    case Qt::Key_F: return 109;
    case Qt::Key_G: return 110;
    case Qt::Key_H: return 111;
    case Qt::Key_I: return 112;
    case Qt::Key_J: return 113;
    case Qt::Key_K: return 114;
    case Qt::Key_L: return 115;
    case Qt::Key_M: return 116;
    case Qt::Key_N: return 117;
    case Qt::Key_O: return 118;
    case Qt::Key_P: return 119;
    case Qt::Key_Q: return 120;
    case Qt::Key_R: return 121;
    case Qt::Key_S: return 122;
    case Qt::Key_T: return 123;
    case Qt::Key_U: return 124;
    case Qt::Key_V: return 125;
    case Qt::Key_W: return 126;
    case Qt::Key_X: return 127;
    case Qt::Key_Y: return 128;
    case Qt::Key_Z: return 129;
    case Qt::Key_BracketLeft: return 130;
    case Qt::Key_Backslash: return 131;
    case Qt::Key_BracketRight: return 132;
    case Qt::Key_AsciiCircum: return 133;
    case Qt::Key_Underscore: return 134;
    case Qt::Key_QuoteLeft: return 135;
    case Qt::Key_BraceLeft: return 136;
    case Qt::Key_Bar: return 137;
    case Qt::Key_BraceRight: return 138;
    case Qt::Key_AsciiTilde: return 139;
    case Qt::Key_nobreakspace: return 140;
    case Qt::Key_exclamdown: return 141;
    case Qt::Key_cent: return 142;
    case Qt::Key_sterling: return 143;
    case Qt::Key_currency: return 144;
    case Qt::Key_yen: return 145;
    case Qt::Key_brokenbar: return 146;
    case Qt::Key_section: return 147;
    case Qt::Key_diaeresis: return 148;
    case Qt::Key_copyright: return 149;
    case Qt::Key_ordfeminine: return 150;
    case Qt::Key_guillemotleft: return 151;
    case Qt::Key_notsign: return 152;
    case Qt::Key_hyphen: return 153;
    case Qt::Key_registered: return 154;
    default: return -1;
  }
}

Qt::Key KeyConverterCustom::revertKey(int k)
{
  switch (k)
  {
    case 0: return Qt::Key_Escape;
    case 1: return Qt::Key_Tab;
    case 2: return Qt::Key_Backtab;
    case 3: return Qt::Key_Backspace;
    case 4: return Qt::Key_Return;
    case 5: return Qt::Key_Enter;
    case 6: return Qt::Key_Insert;
    case 7: return Qt::Key_Delete;
    case 8: return Qt::Key_Pause;
    case 9: return Qt::Key_Print;
    case 10: return Qt::Key_SysReq;
    case 11: return Qt::Key_Clear;
    case 12: return Qt::Key_Home;
    case 13: return Qt::Key_End;
    case 14: return Qt::Key_Left;
    case 15: return Qt::Key_Up;
    case 16: return Qt::Key_Right;
    case 17: return Qt::Key_Down;
    case 18: return Qt::Key_PageUp;
    case 19: return Qt::Key_PageDown;
    case 20: return Qt::Key_Shift;
    case 21: return Qt::Key_Control;
    case 22: return Qt::Key_Meta;
    case 23: return Qt::Key_Alt;
    case 24: return Qt::Key_CapsLock;
    case 25: return Qt::Key_NumLock;
    case 26: return Qt::Key_ScrollLock;
    case 27: return Qt::Key_F1;
    case 28: return Qt::Key_F2;
    case 29: return Qt::Key_F3;
    case 30: return Qt::Key_F4;
    case 31: return Qt::Key_F5;
    case 32: return Qt::Key_F6;
    case 33: return Qt::Key_F7;
    case 34: return Qt::Key_F8;
    case 35: return Qt::Key_F9;
    case 36: return Qt::Key_F10;
    case 37: return Qt::Key_F11;
    case 38: return Qt::Key_F12;
    case 39: return Qt::Key_F13;
    case 40: return Qt::Key_F14;
    case 41: return Qt::Key_F15;
    case 42: return Qt::Key_F16;
    case 43: return Qt::Key_F17;
    case 44: return Qt::Key_F18;
    case 45: return Qt::Key_F19;
    case 46: return Qt::Key_F20;
    case 47: return Qt::Key_F21;
    case 48: return Qt::Key_F22;
    case 49: return Qt::Key_F23;
    case 50: return Qt::Key_F24;
    case 51: return Qt::Key_F25;
    case 52: return Qt::Key_F26;
    case 53: return Qt::Key_F27;
    case 54: return Qt::Key_F28;
    case 55: return Qt::Key_F29;
    case 56: return Qt::Key_F30;
    case 57: return Qt::Key_F31;
    case 58: return Qt::Key_F32;
    case 59: return Qt::Key_F33;
    case 60: return Qt::Key_F34;
    case 61: return Qt::Key_F35;
    case 62: return Qt::Key_Super_L;
    case 63: return Qt::Key_Super_R;
    case 64: return Qt::Key_Menu;
    case 65: return Qt::Key_Hyper_L;
    case 66: return Qt::Key_Hyper_R;
    case 67: return Qt::Key_Help;
    case 68: return Qt::Key_Direction_L;
    case 69: return Qt::Key_Direction_R;
    case 70: return Qt::Key_Space;
    case 72: return Qt::Key_Exclam;
    case 73: return Qt::Key_QuoteDbl;
    case 74: return Qt::Key_NumberSign;
    case 75: return Qt::Key_Dollar;
    case 76: return Qt::Key_Percent;
    case 77: return Qt::Key_Ampersand;
    case 78: return Qt::Key_Apostrophe;
    case 79: return Qt::Key_ParenLeft;
    case 80: return Qt::Key_ParenRight;
    case 81: return Qt::Key_Asterisk;
    case 82: return Qt::Key_Plus;
    case 83: return Qt::Key_Comma;
    case 84: return Qt::Key_Minus;
    case 85: return Qt::Key_Period;
    case 86: return Qt::Key_Slash;
    case 87: return Qt::Key_0;
    case 88: return Qt::Key_1;
    case 89: return Qt::Key_2;
    case 90: return Qt::Key_3;
    case 91: return Qt::Key_4;
    case 92: return Qt::Key_5;
    case 93: return Qt::Key_6;
    case 94: return Qt::Key_7;
    case 95: return Qt::Key_8;
    case 96: return Qt::Key_9;
    case 97: return Qt::Key_Colon;
    case 98: return Qt::Key_Semicolon;
    case 99: return Qt::Key_Less;
    case 100: return Qt::Key_Equal;
    case 101: return Qt::Key_Greater;
    case 102: return Qt::Key_Question;
    case 103: return Qt::Key_At;
    case 104: return Qt::Key_A;
    case 105: return Qt::Key_B;
    case 106: return Qt::Key_C;
    case 107: return Qt::Key_D;
    case 108: return Qt::Key_E;
    case 109: return Qt::Key_F;
    case 110: return Qt::Key_G;
    case 111: return Qt::Key_H;
    case 112: return Qt::Key_I;
    case 113: return Qt::Key_J;
    case 114: return Qt::Key_K;
    case 115: return Qt::Key_L;
    case 116: return Qt::Key_M;
    case 117: return Qt::Key_N;
    case 118: return Qt::Key_O;
    case 119: return Qt::Key_P;
    case 120: return Qt::Key_Q;
    case 121: return Qt::Key_R;
    case 122: return Qt::Key_S;
    case 123: return Qt::Key_T;
    case 124: return Qt::Key_U;
    case 125: return Qt::Key_V;
    case 126: return Qt::Key_W;
    case 127: return Qt::Key_X;
    case 128: return Qt::Key_Y;
    case 129: return Qt::Key_Z;
    case 130: return Qt::Key_BracketLeft;
    case 131: return Qt::Key_Backslash;
    case 132: return Qt::Key_BracketRight;
    case 133: return Qt::Key_AsciiCircum;
    case 134: return Qt::Key_Underscore;
    case 135: return Qt::Key_QuoteLeft;
    case 136: return Qt::Key_BraceLeft;
    case 137: return Qt::Key_Bar;
    case 138: return Qt::Key_BraceRight;
    case 139: return Qt::Key_AsciiTilde;
    case 140: return Qt::Key_nobreakspace;
    case 141: return Qt::Key_exclamdown;
    case 142: return Qt::Key_cent;
    case 143: return Qt::Key_sterling;
    case 144: return Qt::Key_currency;
    case 145: return Qt::Key_yen;
    case 146: return Qt::Key_brokenbar;
    case 147: return Qt::Key_section;
    case 148: return Qt::Key_diaeresis;
    case 149: return Qt::Key_copyright;
    case 150: return Qt::Key_ordfeminine;
    case 151: return Qt::Key_guillemotleft;
    case 152: return Qt::Key_notsign;
    case 153: return Qt::Key_hyphen;
    default: return Qt::Key_unknown;
  }
}
